H.264/Moving Picture Experts Group (MPEG)-4 Advanced Video Coding (AVC) (hereinafter abbreviated as H.264), is known as a coding method for moving image compression recording (International Organization for Standardization (ISO)/International Electrotechnical Commission (IEC) 14496-10:2010 Information technology—Coding of audio-visual objects—Part 10: Advanced Video Coding). Similar to conventional coding methods, H.264 performs motion compensation by referring to other pictures for improved coding efficiency. Motion vectors can be coded in units of macro-blocks (16 pixels*16 pixels) or blocks (eight pixels*eight pixels). To code a motion vector, a predicted motion vector is calculated by using a median value of motion vectors in neighboring blocks (left, above, and upper right). An error between the predicted motion vector and the motion vector is then coded.
H.264 is capable of hierarchical coding, which is discussed in the Annex G Scalable Video Coding section of H.264. In the case of spatial scalability, a motion vector in a block of a base layer can be magnified to generate a predicted motion vector (hereinafter, referred to as an interlayer predicted motion vector). A motion vector of the enhancement layer may be coded by using the interlayer predicted motion vector instead of an ordinary median value of motion vectors. More specifically, the magnified motion vector can be used when motion_prediction_flag is TRUE.
International standardization activities for coding methods of even higher efficiency as a successor to H.264 have been recently started. The International Organization for Standardization and the International Electrotechnical Commission (ISO/IEC) and the International Telecommunication Union (ITU) Telecommunication Standardization Sector (ITU-T) established the Joint Collaborative Team on Video Coding (JCT-VC) for that purpose. JCT-VC promotes standardization of the High Efficiency Video Coding scheme (hereinafter, abbreviated as HEVC). In HEVC, Advanced Motion Vector Prediction (AMVP) is discussed as a new motion vector coding method (JCT-VC document JCTVC-A124_r2.doc, the Internet <http://wftp3.itu.int/av-arch/jctvc-site/2010_04_A_Dresden/>). AMVP uses not only a median value of motion vectors in neighboring blocks as a reference motion vector, but also the motion vectors in the neighboring blocks themselves as reference motion vectors. Aside from the motion vectors in the neighboring blocks, a motion vector in a block at the same position of the previous picture in coding order (hereinafter, referred to as a temporal direction predicted motion vector) is also included in predicted motion vectors. Motion vectors including the same components among such predicted motion vectors are integrated to reduce target motion vectors, from which a closest motion vector is selected. A code for identifying the selected motion vector (hereinafter, referred to as a predicted vector index code) and a prediction error resulting from the prediction are then coded for improved coding efficiency.
When hierarchical coding is implemented in HEVC, whether to refer to motion vectors in an enhancement layer or in a base layer is selected like H.264. If reference motion vectors may be selected like H.264, the above-described method may be used. However, the above-described method has an issue of failing to improve the coding efficiency because both an AMVP-based predicted vector index code and a flag for selecting prediction of an interlayer motion vector are needed.